Field
The present disclosure relates generally to detection of and recovery from ciphering parameter mismatch, and more specifically to methods and apparatus for detecting a ciphering parameter mismatch in the Radio Link Control (RLC) layer using a ciphered field in Protocol Data Units (PDUs) and for recovery of PDUs after mismatch is detected.
Background
In 3rd and 4th generation (i.e., 3G and 4G) wireless technologies, certain technologies or systems are utilized such as Wideband Code Division Multiple Access (WCDMA) also known as Universal Mobile Telecommunications System (UMTS). These terms may be used interchangeably and reference the same underlying technology. FIG. 1 illustrates an example of a WCDMA/UMTS communication system. As illustrated, a communication system 100 includes a base station (BS) also known as NodeB 102 that transmits signals 104 on a downlink (DL) or forward link (FL) channels to mobile devices or User Equipment (UE) 106. The UEs 106, in turn, may transmit signals 108 to BS 102 via uplink (UL) or reverse link (RL) channels. It is noted that for UMTS systems that the base stations or NodeBs (e.g., 102) and other devices effecting a network such as Radio Network Controllers (e.g., RNC 110), may be also collectively referred to as a Universal Terrestrial Radio Access Network or UTRAN.
In order to protect user data and signaling information between UEs and NodeBs from being intercepted by unauthorized devices, communications systems such as WCDMA/UMTS utilize Ciphering to encrypt the transmitted data and signaling information. The WCDMA/UMTS protocol stack is broadly classified in to the Access-Stratum and the Non-Access-Stratum. Ciphering is performed at specific layers in the “Access stratum” of the UMTS protocol stack. As an illustration of this protocol, FIG. 2 provides an example of the Access Stratum employed in devices such as UE 106 or BS 102. The Access Stratum includes three layers: layer 1, layer 2 and layer 3, which together provide transport for a signaling plane (C-plane) 202 and a user plane (U-plane) 204. The C-plane 202 handles transport for signaling data between UEs and NodeBs, whereas U-plane 204 handles user data transport between UEs and the NodeBs.
Layer 1 includes the physical (PHY) layer 206, which is responsible for procedures related to transmission and reception of WCDMA/UMTS signals over the air. These include signaling messages, transfer of data and other related procedures. Layer 2 includes a Medium Access Control (MAC) layer 208, a Radio Link Control (RLC) layer or entity 210, and a packet data convergence protocol (PDCP) layer 212 used for the user plane (U-plane) 204. Layer 3 of the Access stratum includes a Radio Resource Control (RRC) layer 214. The RRC 214 sets up and configures all radio bearers (RBs), and the PDCP layer 212 provides header compression for Service Data Units (SDUs) received from the U-plane 204 or decompression for Protocol Data Units (PDUs) sent to the U-plane 204. RLC layer 210 provides segmentation of SDUs from either RRC 214 or PDCP layer 212 into RLC protocol data units (PDUs). MAC layer 208 provides scheduling and multiplexing of RLC PDUs onto the transport channel, and interfacing with PHY layer 206.
As mentioned before, Ciphering is performed at particular layers in the Access stratum protocol. Specifically, Ciphering is performed at either the RLC layer 210 or the MAC layer 208 in Layer 2, the choice of which is dependent on one of three particular modes of operation of an RLC protocol. For RLC Transparent Mode (TM) operation mode, Ciphering is performed at the MAC level (e.g., MAC-d entity), whereas in RLC Unacknowledged Mode (UM) and RLC Acknowledged Mode (AM) of operations, Ciphering is performed at the RLC level. Ciphering is utilized, in particular, for protecting data transmitted over-the-air, whether performed at the RLC or MAC levels.
Ciphering/Deciphering Algorithms or engines used for performing Ciphering/Deciphering utilize a time-varying parameter value or count referred to as Count-C, which is based on a combination of a Hyper-Frame Number (HFN) and a sequence number (SN) of a particular RLC PDU in UM RLC and AM RLC modes or an HFN value and Connection Frame Number (CFN) for RLC TM where Ciphering is performed at the MAC layer. In UMTS/WCDMA, as examples, the Count-C value is a 32-bit value. As an illustration, FIG. 3 illustrates that for an RLC TM mode 302, the Count-C value is derived from a MAC-d HFN comprised of 24 bits and a CFN values of 8 bits. For an RLC UM mode 304, the Count-C value is derived from a 25 bit HFN and 7 bit SN in the header of an RLC PDU, and in an RLC AM mode, the Count-C value is derived from a 20-bit HFN and 12 bit SN in the header of an RLC PDU. In particular, the SN is embedded in a header of a packet, while HFN is a count maintained in both a transmitter and a receiver (e.g., a transmitter of an eNodeB and a receiver in a UE). Each time an SN wraps around its maximum representing value back to zero, the HFN is incremented by one in both the transmitter and in the receiver. For example, if SN is represented by 7 bits as in RLC UM, which counts from zero to 127, once the SN value is beyond 127, the HFN is incremented by one, and the SN restarts from zero. As a result, according to the SN, the transmitter and the receiver can timely increment the HFN to keep synchronization of the HFN and maintain the ciphering and deciphering processes. It is noted that the illustration of FIG. 3 is a representation of how a Count-C value is determined, not an illustration of a structure, such as a packet structure.
Under certain circumstances, however, the HFN and attendant Count-C values between the transmitter and the receiver may be out of synchronization, causing both the transmitter and receiver to fail in the ciphering and deciphering processes. When this parameter mismatch occurs, the receiver would discard all incoming data, and in rare instances, might even reconstruct corrupted frames and pass these over to the higher layers. This scenario may happen with both RLC UM and RLC AM modes of operation, and has substantial and deleterious effects on the end-user experience. This problem of parameter mismatch has a particularly high probability of occurrence with RLC UM mode of operation where the sequence number space is very small. For instance, in devices capable of high data rates, such as in Evolved High-Speed Packet Access (HSPA+) capable receivers, an SN rollover may occur as frequently as every 4-6 ms under certain network configurations.
A ciphering parameter mismatch between the transmitter and receiver might result in the RLC Reset procedure as defined in 3GPP TS 25.322 (RLC), for the RLC Acknowledged Mode (AM) of operation. The 3GPP specifications provide for a mechanism wherein the transmitter and receiver may recover from the mismatched state, following an RLC Reset procedure. This reset, however, is applicable only for RLC AM mode of operation, and also involves a significant amount of data loss (i.e., a lossy solution, meaning it involves loss of data), and recovery with a very high latency that still has a substantial impact on the end-user experience. For RLC UM operation, the 3GPP specification does not define an equivalent of the RLC Reset usable in RLC AM mode. Thus, if the Count-C values go out of synchronization between transmitter and receiver, this would result in all incoming data being discarded by the receiver as there is no known recovery mechanism for RLC UM mode of operation.
Another known mechanism is known as a Counter Check procedure, wherein the network (e.g., RNC 110) can trigger this procedure to validate Count-C values used by UEs. If a mismatch is found, the network could then release the RRC Connection. This mechanism, however, would still result in a significant amount of data loss, as well as RRC Connection release, which would significantly affect the end-user experience due to such data loss and delays caused by call reestablishment after release. Thus, even if the UE detects a problem, this mechanism still cannot be employed for recovery.
Accordingly, there is a need for mechanisms for detection and recovery from such conditions as parameter mismatch, including lossless recovery where no data is lost.